Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Analog domain #211

Merged
merged 7 commits into from
Sep 5, 2024
Merged

Analog domain #211

merged 7 commits into from
Sep 5, 2024

Conversation

fmauch
Copy link
Collaborator

@fmauch fmauch commented Jul 19, 2024

This adds the possibility to specify the output domain when setting an analog output.

Tests are still missing, hence the draft status.

Edit: Tests are now there.

@fmauch
Copy link
Collaborator Author

fmauch commented Jul 19, 2024

Note: This will be breaking ABI, but not API.

@urrsk
Copy link
Member

urrsk commented Jul 19, 2024

I am not sure it this is the right way. I would prefer to guide people setting this up on the teach pendant. Though they need to remember to save the installation

@fmauch
Copy link
Collaborator Author

fmauch commented Jul 22, 2024

I am not sure it this is the right way. I would prefer to guide people setting this up on the teach pendant. Though they need to remember to save the installation

I don't quite understand why that should be the case. We offer a functionality to set an analog output and this PR merely adds the possibility to specify whether this is a current or a voltage.

Is what you are saying that users should select on the TP which domain to use and the functionality in the client library shouldn't modify the domain at all? We could also add a third state "don't change" which could be the default. One problem there would be that at least for ROS 1 the default value would be 0 which I would not like to remap to "don't change" since 0 on the low-level interface means "current".

Thinking about it, that might be the best solution: Provide a default value of -1 that will not change the domain.

@urrsk
Copy link
Member

urrsk commented Aug 12, 2024

We could also add a third state "don't change" which could be the default. One problem there would be that at least for ROS 1 the default value would be 0 which I would not like to remap to "don't change" since 0 on the low-level interface means "current".

Thinking about it, that might be the best solution: Provide a default value of -1 that will not change the domain.

I like the idea of giving the flexibility to do both.

@fmauch fmauch self-assigned this Sep 3, 2024
@fmauch
Copy link
Collaborator Author

fmauch commented Sep 3, 2024

I like the idea of giving the flexibility to do both.

I've updated the PR accordingly. When not passing the domain, it is not set in the RTDEWriter.

include/ur_client_library/ur/datatypes.h Outdated Show resolved Hide resolved
This way it is more explicit what is actually happening.
@fmauch fmauch merged commit e688988 into UniversalRobots:master Sep 5, 2024
18 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants